home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tech Arsenal 1
/
Tech Arsenal (Arsenal Computer).ISO
/
tek-04
/
netprog.zip
/
NETPROG.TAR
/
fd
/
mycat.c
< prev
next >
Wrap
C/C++ Source or Header
|
1989-12-17
|
629b
|
36 lines
/*
* Catenate one or more files to standard output.
* If no files are specified, default to standard input.
*/
#define BUFFSIZE 4096
main(argc, argv)
int argc;
char *argv[];
{
int fd, i, n;
char buff[BUFFSIZE];
extern char *pname;
pname = argv[0];
argv++; argc--;
fd = 0; /* default to stdin if no arguments */
i = 0;
do {
if (argc > 0 && (fd = my_open(argv[i], 0)) < 0) {
err_ret("can't open %s", argv[i]);
continue;
}
while ( (n = read(fd, buff, BUFFSIZE)) > 0)
if (write(1, buff, n) != n)
err_sys("write error");
if (n < 0)
err_sys("read error");
} while (++i < argc);
exit(0);
}